package ae.pcfc.cldos.online.common.manager;

import java.util.List;

import ae.pcfc.cldos.online.common.exception.RequestAllreadyExistException;
import ae.pcfc.cldos.online.gs.service.client.vo.GSFinancialDataVO;
import ae.pcfc.cldos.online.gs.service.client.vo.StepCommentsVO;
import ae.pcfc.cldos.online.gs.service.client.vo.WarningCommentsVO;

/**
 * 
 * @author arosa
 *
 */
public interface GsInfoManager {
	
	public GSFinancialDataVO retriveFinancialData(String coLicNo,Long clientId);
	
	public String getNextOfflineAppId(String processCode);
	
	public void setClientMedicalType(String coLicNo,String medicalType);
	
	public String getClientMedicalType(String coLicNo);
	
	public boolean cancelGSAppRequest(String offlineAppId);
	
	public boolean rejectAppRequest(String offlineAppId);
	
	public void addVisitVisaBG(String companyLicenseNo, String initiatedBy);
	
	public void removeVisitVisaBG(String companyLicenseNo, String initiatedBy);
	
	public void addEmpVisaBG(String companyLicenseNo, String initiatedBy);
	
	public void removeEmpVisaBG(String companyLicenseNo, String initiatedBy);
	
	public String getWfStatus(String clientRefNo);
	
	public void setIncidentId(String offlineAppId, String incidentId);
	
	public void updateAppReqWorkFlowStatus(String offlineAppId,String wfStatus);
	
	public void insertStepComments(StepCommentsVO stepCommentsVO);
	
	public List<WarningCommentsVO>  getWarningRemarks(String licNo);
	
	public void isRequestExist(String processCode,String empId, String visitorId) throws RequestAllreadyExistException;
}
